package com.ysz.component.tableshard;


import com.ysz.component.tableshard.strategy.TableShardStrategy;

import java.lang.annotation.*;

/**
 * 分表注解
 *
 * @author ysz
 * @date 2022/3/10 14:43
 */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
@Documented
public @interface TableShardAnnotation {

    /**
     * 要分表的表名
     *
     * @author ysz
     * @date 2022/3/10 14:46
     */
    String tableName();

    /**
     * 分表策略
     *
     * @author ysz
     * @date 2022/3/10 14:47
     */
    Class<? extends TableShardStrategy> tableShardStrategy();

    /**
     * 时间戳
     *
     * @author ysz
     * @date 2022/3/10 14:57
     */
    long specifyDay() default -1;
}
